In a GNSS, a receiver estimates delays τ in the navigation signals received from different satellites and uses this information, combined with information on the position of the satellites, to estimate its position. The more accurate the estimation of the delays τ, the more accurately the receiver can estimate its position.
The United States led Global Positioning System (GPS) is presently the GNSS in most common use. Navigation signals transmitted by GPS satellites are modulated using a Phase Shift Keying (PSK) modulation of a code onto a carrier signal having a designated carrier frequency. The modulation involves altering the phase of the carrier signal by fixed amounts (0 or π) at a code rate ƒC, each symbol of the code having duration TC=1/ƒC and the code being repeated with time period TG. A navigation signal received at a receiver from a satellite can therefore be represented by an equivalent bi-modal amplitude modulation function a(t−τ)ε(−1, +1) with period TG, as shown in FIG. 1.
The receiver estimates the delay τ by comparing the received signal to a locally generated reference signal. The reference signal consists of an in-phase and quadrature-phase (I and Q) carrier modulated with the same code as the input signal. The reference modulation can be represented mathematically as a(t−{circumflex over (τ)}) where {circumflex over (τ)} is a trial delay. The comparison typically consists in multiplying the received signal by the I and Q reference to yield a demodulated signal. The demodulated signal is then integrated over a given time, usually the same as the period TG of the code, to output a value known as a correlation. The correlation depends on the difference between the trial delay {circumflex over (τ)} of the reference signal and the true delay τ of the received signal and can be expressed as a correlation function Λ({circumflex over (τ)}−τ). As shown in FIG. 2, this correlation function for a PSK modulated signal is triangular and peaks when the trial delay {circumflex over (τ)} matches the true delay τ The width of the correlation function is twice the symbol duration TC, i.e. 2TC.
Calculating the entire correlation function Λ({circumflex over (τ)}−τ) over all {circumflex over (τ)} and analysing it to determine its peak and hence identify the delay τ of the received signal is a computationally time-consuming task. Most conventional GPS receivers therefore compute just three sampled correlations simultaneously, using three reference signals offset in time from one another. The three correlations are usually referred to as gate values of Early (E), Prompt (P) and Late (L) gates. The E and L gates are offset from one another by a time separation TDC, so that they can be considered to have trial delays
      τ    ^    -                    T        DC            2        ⁢                  ⁢    and    ⁢                  ⁢          τ      ^        +            T      DC        2  respectively. The P gate can then be considered to have trial delay {circumflex over (τ)} half way between these trial delays of the E and L gates. So, as illustrated in FIG. 2, when the E and L gate values are equal, the P gate value yields the peak value of the correlation function Λ({circumflex over (τ)}−τ) and the trial delay {circumflex over (τ)} is equal to the true delay τ
An iterative algorithm can be used to arrive at this state. When the trial delay {circumflex over (τ)} is not equal to the true delay, the P gate will be offset from the peak of the correlation function Λ( ) and there will be a difference in the values of the E and L gates. So, an error signal proportional to the difference between the trial delay {circumflex over (τ)} and the true delay τ can be generated by subtracting the L gate value from the E gate value. This can be used to iteratively adjust the trial delay {circumflex over (τ)} toward the true delay τ. A best estimate of the true delay is then deemed to be the value of the trial delay (of the P gate) when the E gate value is equal to the L gate value (as shown in FIG. 2).
It is presently intended to improve the American GPS by adding new navigation signals to the system. The independent European Galileo system will use similar new navigation signals in both the same and new frequency bands. While some of the new navigation signals will continue to use PSK modulation, most of them will be modulated using the new Binary Offset Carrier (BOC) modulation.
Like PSK modulation, BOC modulation involves modulating a code onto a carrier. The code is similar to that used in PSK modulation, and the code in the received signal can again be represented by an equivalent bi-modal amplitude modulation function a(t−τ) having code rate ƒC, symbol duration TC and periodicity TG. However, BOC modulation involves further modulating the signal by a sub-carrier, which can be represented by a sub-carrier modulation function s(t−τ) having sub-carrier rate ƒS and sub-symbol duration equivalent to a half-cycle TS=1/(2ƒS). As seen in FIG. 3, the sub-carrier modulation function s(t−τ) is a simple periodic square waveform. The sub-carrier rate ƒS is an integer multiple, or an integer-and-a-half multiple of the code rate ƒC. The standard notation for BOC modulation reads BOC(ƒS, ƒC). This figure shows what can be called ‘sine-BOC’ where the sub carrier has 0 deg phase shift relative to the code zero crossings. Also there is ‘cosine-BOC’ where the sub-carrier is phase shifted 90 deg relative to the code zero-crossings (not shown).
When a received BOC signal is correlated using a matching locally generated BOC reference signal the resulting correlation function ({circumflex over (τ)}−τ) has multiple peaks. For example, referring to FIG. 4, this correlation function of a sine-BOC signal modulated using BOC(2ƒ, ƒ) has three positive peaks and four negative peaks. The central positive peak corresponds to a match of the true delay τ of the received signal with the trial delay of the reference signal. The other, secondary peaks are separated at intervals of the sub-symbol duration TS. Importantly, the envelope (dashed line) of this correlation function ({circumflex over (τ)}−τ) is the same as the correlation function Λ({circumflex over (τ)}−τ) of a PSK modulated signal having the same code rate ƒC.
Because the central peak of the BOC correlation function ({circumflex over (τ)}−τ) has steeper sides than the peak of the equivalent PSK correlation function Λ({circumflex over (τ)}−τ), BOC modulation has the potential to allow more accurate delay estimation. Specifically, when the E and L gates are located on either side of the central peak then the error signal generated from the difference between the L gate value and the E gate value can steer the P gate to the top of the central peak and hence the trial delay {circumflex over (τ)} to the true delay τ, as illustrated in the top part of FIG. 4. There is however an inherent ambiguity in the delay estimate for a BOC signal provided by the conventional delay estimation technique, as described above. When the E and L gates reside on either side of one of the secondary peaks, the error signal will steer the P gate to the secondary peak (which can be negative). In that situation, the error signal will be zero, just as it is when the P gate is at the top of the central peak, and the iteration will have converged to a value of the trial delay {circumflex over (τ)} that does not correspond to the true delay τ. This is known as ‘false lock’ or ‘slip’, or ‘false node tracking’.
A number of techniques have been proposed for overcoming this problem. One such technique, commonly referred to as ‘bump jumping’, is described in the paper “Tracking Algorithm for GPS Offset Carrier Signals”, P. Fine et al, Proceedings of ION 1999 National Technical Meeting, January 1999. This technique takes advantage of the knowledge that adjacent peaks of the BOC correlation function ({circumflex over (τ)}−τ)\. are separated from one another by the known sub-carrier symbol duration TS. Specifically, the technique tests for correct location of the P gate using a pair of gates, called Very Early (VE) and Very Late (VL) gates, having trial delays {circumflex over (τ)}−TS and {circumflex over (τ)}+TS respectively. These are offset from the trial delay {circumflex over (τ)} of the P gate by the sub-carrier symbol duration TS. So, if the P gate has converged to the top of one of the peaks, e.g. the receiver is in lock, the VE, P and VL gates are located on three adjacent peaks. At this stage, the VE, P and VL gate values are compared. If the VE and VL gate amplitudes are less than the P gate amplitude, the P gate is known to lie on the central peak and the trial delay {circumflex over (τ)} corresponds to the true delay. However, if the VE or VL gate amplitude is higher than the P gate value, the P gate is on a secondary peak. In this event, the trial delay {circumflex over (τ)} is incremented by the sub-symbol duration TS in the direction of whichever of the VE and VL gates has the higher (modulus) value. This action should cause the P gate to jump to the next peak toward the central peak. The comparison is then repeated to verify that the P gate is on the central peak or to cause repeated incrementing of the trial delay {circumflex over (τ)} until the P gate is located on the central peak.
Bump jumping allows a receiver to fully exploit the potential accuracy of BOC. However, there can be a significant waiting time before the delay estimate can be relied on. There is an elapsed time required to decide whether there is a false lock or not. This is longer for a low C/N0, when the VE, P and VL gate values must also be averaged over a significant time in order to be sure which of the three tested adjacent peaks has the highest amplitude. The required time to detect false lock also increases proportionally with the ratio of the sub-carrier rate to the code rate ƒS/ƒC, because the difference of amplitude between adjacent peaks relatively decreases. It may also be necessary to correct false lock several times over successive secondary peaks before the central peak is found, a problem which is exacerbated as the ratio of the sub-carrier rate to the code rate ƒS/ƒC increases, because the number of secondary peaks increases. Overall, the waiting time may range upwards to several seconds, which is certainly enough to have potentially disastrous consequences for a plane landing, ship docking or such like. Worse, the receiver does not know that it has been in a false lock safe until it actually jumps out of it. The bump jumping system therefore is not fail safe.
A further difficulty has now been realised since the launch of the first test satellite GIOVE-A transmitting BOC signals in December 2005. Non-linear and linear distortion in the transmitting chain can easily cause appreciable asymmetry in the actual correlation function ({circumflex over (τ)}−τ)—where the corresponding secondary peaks on either side of the main peak are no longer equal in amplitude. This inevitably degrades performance, and in a worst case, the bump jumping receiver simply does not work. “GIOVE-A in orbit testing results” M. Falcone, M. Lugert, M. Malik, M. Crisic, C. Jackson, E. Rooney, M. Trethey ION GNSS FortWorth Tex., September 2006.
The paper “Unambiguous Tracker for GPS Binary-Offset-Carrier Signals”, Fante R., ION 59th Annual Meeting/CIGTF 22nd Guidance Test Symposium, 23-25 Jun. 2003, Albuquerque, N. Mex., describes another technique involving multiple sampling (gating) of the correlation function and then linear combination of these samples to synthesise a monotonic approximation to the PSK correlation function Λ({circumflex over (τ)}−τ) having no multiple peaks. This solution certainly eliminates false locks. However, this technique relies on a very complex receiver design. More fundamentally, it fails to realise the potential accuracy conferred by BOC modulation, because the shallower PSK correlation peak is relied on to resolve the delay estimate. Similarly, the paper “BOC(x, y) signal acquisition techniques and performances”, Martin et al., Proceedings of ION GPS 2003, September 2003, Portland, Oreg., describes a technique that exploits the fact that the BOC modulated signal has a mathematical equivalence to two PSK modulated signals centred on two separate carrier frequencies; where the higher frequency ƒH is equal to the carrier frequency plus the sub-carrier frequency ƒS, while the lower frequency ƒL is equal to the carrier frequency minus the sub-carrier frequency ƒS. With appropriate processing the actual monotonic PSK correlation function Λ({circumflex over (τ)}−τ) can be recovered. But this method is again complex to implement and more fundamentally fails to realise the potential accuracy conferred by BOC modulation.
The present invention overcomes these problems.